<?php
ini_set("memory_limit", "10240M");
require_once __DIR__ . '/../autoloader.php';
use phpspider\core\phpspider;
use phpspider\core\requests;
use phpspider\core\selector;

/* Do NOT delete this comment */
/* 不要删除这段注释 */

//$html =<<<STR
    //<div id="demo">
        //aaa
        //<span class="tt">bbb</span>
        //<span>ccc</span>
        //<p>ddd</p>
    //</div>
//STR;

//// 获取id为demo的div内容
////$data = selector::select($html, "//div[contains(@id,'demo')]");
//$data = selector::select($html, "#demo", "css");
//print_r($data);
$login_url="https://pixabay.com/zh/accounts/login/?next=https://pixabay.com";
$params = array(
    "username" => "w_1121562734",
    "password" => "wjb64800891",
);
// 发送登录请求
requests::post($login_url, $params);
// 登录成功后本框架会把Cookie保存到www.waduanzi.com域名下，我们可以看看是否是已经收集到Cookie了
$cookies = requests::get_cookies("pixabay.com");
// requests对象自动收集Cookie，访问这个域名下的URL会自动带上
print_r($cookies);  // 可以看到已经输出Cookie数组结构
$html = requests::get('https://pixabay.com/zh/image-3381786/');
//echo $html;
//exit;
$data = selector::select($html, "//*[@id='media_show']/div[2]/div[4]/div[1]/table[1]/tbody[1]/tr[4]/td[1]/input/@value");
var_dump($data);
    curl_img('https://pixabay.com/zh/photos/download/bird-2823767.jpg');

function curl_img($url){
    //登录
    $data="username=1121562734@qq.com&password=wjb64800891";
    $ch=curl_init();//初始化
    curl_setopt($ch,CURLOPT_URL,"https://pixabay.com/zh/accounts/login/?next=/");//设置访问的url的地址
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);//执行之后不要直接打印出来让其他程序执行
    
    //Cookie相关设置,这部分设置要在所有回话`开始之前设置
    date_default_timezone_set('PRC');//使用Cookie,必须先设置时区因为cookie有时间限制
    //下面四行直接拷贝
    curl_setopt($ch,CURLOPT_COOKIESESSION,true);//要让cookie值能够在本地端及服务器端能够保存cookie
    curl_setopt($ch,CURLOPT_COOKIEFILE,"cookiefile");//包含cookie数据的文件名，cookie文件的格式可以是Netscape格式，或者只是纯HTTP头部风格，存入文件。如果文件名是空的，不会加载cookie，但cookie的处理仍旧启用。
    curl_setopt($ch,CURLOPT_COOKIEJAR,"cookiefile");//连接结束后，比如，调用curl_close后，保存cookie信息的文件。
    curl_setopt($ch,CURLOPT_COOKIE,session_name()."=".session_id());//设定HTTP请求中"Cookie:"部分的内容。多个cookie用分号分隔，分号后带一个空格(例如，"fruit=apple;colour=red")。
    
    curl_setopt($ch,CURLOPT_HEADER,0);//头部信息不让显示1为启用时会将头文件的信息作为数据流输出。
    curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);//这样子支持页面跳转就是说当用户登录的时候能够支持跳转网页
    
    curl_setopt($ch,CURLOPT_POST,1);//使用post提交如果用get不需要
    curl_setopt($ch,CURLOPT_POSTFIELDS,$data);//必须与url连接形式的数据传输如果是数组可以使用http_build_query进行转化相应的格式
    curl_setopt($ch,CURLOPT_HTTPHEADER,array("application/x-www-form-urlencoded;charset=utf-8","Content-length:".strlen($data)));//设置http传输的数据类型接数据长度和编码
    
    curl_exec($ch);//执行
    
    //下载
    curl_setopt($ch,CURLOPT_URL,$url);//以新设置的为基准下载相关的信息
    curl_setopt($ch,CURLOPT_POST,0);//下载模糊网页不是post所以设置信息
    curl_setopt($ch,CURLOPT_HTTPHEADER,array("Content-type:text/xml"));//输出以xml形式下载
    
    $file =curl_exec($ch);//执行
    curl_close($ch);//关闭curl
    var_dump($file);
    saveAsImage($url,$file);
}

    function saveAsImage($url, $file, $path='../images/')
{
    //返回文件的基本信息
    $filename = pathinfo($url, PATHINFO_BASENAME);
    //打开文件  并且写入到路径中
    $resource = fopen($path . $filename, 'a');
    fwrite($resource, $file);
    fclose($resource);
}